<?xml version="1.0" encoding="iso-8859-1" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content=
    "application/xhtml+xml; charset=iso-8859-1" />
    <title>
      xindy-2.5.1
    </title>
    <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1" />
    <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
    "text/css" media="print" />
  </head>
  <body class="blfs" id="blfs-2020-04-02">
    <div class="navheader">
      <h4>
        Beyond Linux<sup>�</sup> From Scratch <span class="phrase">(System
        V</span> Edition) - Version 2020-04-02
      </h4>
      <h3>
        Chapter&nbsp;51.&nbsp;Typesetting
      </h3>
      <ul>
        <li class="prev">
          <a accesskey="p" href="dvisvgm.html" title="dvisvgm-2.9.1">Prev</a>
          <p>
            dvisvgm-2.9.1
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="../appendices/creat-comm.html" title=
          "Creative Commons License">Next</a>
          <p>
            Creative Commons License
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="typesetting.html" title=
          "Chapter&nbsp;51.&nbsp;Typesetting">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <h1 class="sect1">
        <a id="xindy" name="xindy"></a>xindy-2.5.1
      </h1>
      <div class="package" lang="en" xml:lang="en">
        <h2 class="sect2">
          Introduction to xindy
        </h2>
        <p>
          <span class="application">Xindy</span> is an index processor that
          can be used to generate book-like indexes for arbitrary
          document-preparation systems. This includes systems such as TeX and
          LaTeX, the roff-family, and SGML/XML-based systems (e.g., HTML)
          that process some kind of text and generate indexing information.
        </p>
        <p>
          This package is known to build and work properly using an LFS-9.1
          platform.
        </p>
        <h3>
          Package Information
        </h3>
        <div class="itemizedlist">
          <ul class="compact">
            <li class="listitem">
              <p>
                Download (HTTP): <a class="ulink" href=
                "http://tug.ctan.org/support/xindy/base/xindy-2.5.1.tar.gz">http://tug.ctan.org/support/xindy/base/xindy-2.5.1.tar.gz</a>
              </p>
            </li>
            <li class="listitem">
              <p>
                Download MD5 sum: 221acfeeb0f6f8388f89a59c56491041
              </p>
            </li>
            <li class="listitem">
              <p>
                Download size: 506 KB
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated disk space required: 15 MB
              </p>
            </li>
            <li class="listitem">
              <p>
                Estimated build time: less than 0.1 SBU
              </p>
            </li>
          </ul>
        </div>
        <h3>
          Required Additional Downloads
        </h3>
        <div class="itemizedlist">
          <ul class="compact">
            <li class="listitem">
              <p>
                Required patch: <a class="ulink" href=
                "http://www.linuxfromscratch.org/patches/blfs/svn/xindy-2.5.1-upstream_fixes-1.patch">
                http://www.linuxfromscratch.org/patches/blfs/svn/xindy-2.5.1-upstream_fixes-1.patch</a>
              </p>
            </li>
          </ul>
        </div>
        <h3>
          Xindy Dependencies
        </h3>
        <h4>
          Required
        </h4>
        <p class="required">
          <a class="xref" href="../general/clisp.html" title=
          "Clisp-2.49">Clisp-2.49</a> and <a class="xref" href="texlive.html"
          title="texlive-20190410-source">texlive-20190410</a>
        </p>
        <p class="usernotes">
          User Notes: <a class="ulink" href=
          "http://wiki.linuxfromscratch.org/blfs/wiki/xindy">http://wiki.linuxfromscratch.org/blfs/wiki/xindy</a>
        </p>
      </div>
      <div class="installation" lang="en" xml:lang="en">
        <h2 class="sect2">
          Installation of xindy
        </h2>
        <p>
          Install <span class="application">xindy</span> by running the
          following commands:
        </p>
        <pre class="userinput">
<kbd class=
"command">export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &amp;&amp;

sed -i "s/ grep -v '^;'/ awk NF/" make-rules/inputenc/Makefile.in &amp;&amp;

sed -i 's%\(indexentry\)%\1\\%' make-rules/inputenc/make-inp-rules.pl &amp;&amp;

patch -Np1 -i ../xindy-2.5.1-upstream_fixes-1.patch &amp;&amp;

./configure --prefix=/opt/texlive/2019              \
            --bindir=/opt/texlive/2019/bin/$TEXARCH \
            --datarootdir=/opt/texlive/2019         \
            --includedir=/usr/include               \
            --libdir=/opt/texlive/2019/texmf-dist   \
            --mandir=/opt/texlive/2019/texmf-dist/doc/man &amp;&amp;

make LC_ALL=POSIX</kbd>
</pre>
        <p>
          This package does not have a testsuite.
        </p>
        <p>
          Now, as the <code class="systemitem">root</code> user:
        </p>
        <pre class="root">
<kbd class="command">make install</kbd>
</pre>
      </div>
      <div class="commands" lang="en" xml:lang="en">
        <h2 class="sect2">
          Command Explanations
        </h2>
        <p>
          <span class="command"><strong>sed -i "s/ grep -v '^;'/ awk NF/"
          ...</strong></span>: The build sorts files in latin{1..3} encodings
          to create latin.xdy, and unicode versions of these to create
          utf8.xdy after using <span class="command"><strong>grep -v
          '^;'</strong></span> to remove blank lines. With <span class=
          "application">grep-2.23</span> any data not in the expected
          encoding is treated as binary, resulting in a useless file. This
          command uses an alternative way of removing blank lines.
        </p>
        <p>
          <span class="command"><strong>sed -i 's%\(indexentry\)%\1\\%'
          ...</strong></span>: A regexp contains <code class=
          "literal">indexentry{</code> - perl has warned about the unescaped
          left brace for some time and now treats it as illegal. Change it to
          <code class="literal">indexentry\{</code>, doubling the backslash
          for <span class="command"><strong>sed</strong></span>.
        </p>
        <p>
          <span class="command"><strong>patch -Np1 -i
          ../xindy-2.5.1-upstream_fixes-1.patch</strong></span>: <span class=
          "application">Xindy</span> is now maintained at CTAN. This patch
          updates the source with some of the changes made there (but
          ignoring changes which were only made to allow for spaces in
          pathnames and some trivial recent changes).
        </p>
        <p>
          <em class="parameter"><code>--prefix=, --bindir=, --datarootdir=,
          --infodir=, --mandir= ...</code></em> : these switches ensure that
          the files installed from source will overwrite any corresponding
          files previously installed by <span class=
          "application">install-tl-unx</span> so that the alternative methods
          of installing <span class="application">texlive</span> are
          consistent.
        </p>
        <p>
          <em class="parameter"><code>--includedir=/usr/include</code></em>:
          This parameter ensures that the <code class=
          "filename">kpathsea</code> headers from <a class="xref" href=
          "texlive.html" title="texlive-20190410-source">texlive-20190410</a>
          will be found.
        </p>
        <p>
          <span class="command"><strong>make LC_ALL=POSIX</strong></span>:
          with the current version of <span class=
          "application">coreutils</span> it is essential to build
          <span class="application">xindy</span> in the POSIX (or C) locale
          because in a UTF-8 locale the file <code class=
          "filename">latin.xdy</code> will contain only a heading and then a
          line '<code class="literal">Binary file (standard input)
          matches</code>' instead of the many lines of <span class=
          "application">lisp</span> merge-rule commands it ought to contain.
        </p>
      </div>
      <div class="content" lang="en" xml:lang="en">
        <h2 class="sect2">
          Contents
        </h2>
        <div class="segmentedlist">
          <div class="seglistitem">
            <div class="seg">
              <strong class="segtitle">Installed Programs:</strong>
              <span class="segbody">tex2xindy, texindy, xindy</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Libraries:</strong>
              <span class="segbody">None</span>
            </div>
            <div class="seg">
              <strong class="segtitle">Installed Directory:</strong>
              <span class="segbody">/opt/texlive/2019/texmf-dist/xindy</span>
            </div>
          </div>
        </div>
        <div class="variablelist">
          <h3>
            Short Descriptions
          </h3>
          <table border="0" class="variablelist">
            <colgroup>
              <col align="left" valign="top" />
              <col />
            </colgroup>
            <tbody>
              <tr>
                <td>
                  <p>
                    <a id="tex2xindy" name="tex2xindy"></a><span class=
                    "term"><span class=
                    "command"><strong>tex2xindy</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    transforms a LaTeX index file into a xindy raw index
                    file.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="texindy" name="texindy"></a><span class=
                    "term"><span class=
                    "command"><strong>texindy</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    is a wrapper for xindy that turns on many LaTeX
                    conventions by default.
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="xindy-prog" name="xindy-prog"></a><span class=
                    "term"><span class=
                    "command"><strong>xindy</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    creates a sorted and tagged index from a raw LaTeX index.
                  </p>
                </td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
      <p class="updated">
        Last updated on 2020-03-25 07:06:24 -0500
      </p>
    </div>
    <div class="navfooter">
      <ul>
        <li class="prev">
          <a accesskey="p" href="dvisvgm.html" title="dvisvgm-2.9.1">Prev</a>
          <p>
            dvisvgm-2.9.1
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="../appendices/creat-comm.html" title=
          "Creative Commons License">Next</a>
          <p>
            Creative Commons License
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="typesetting.html" title=
          "Chapter&nbsp;51.&nbsp;Typesetting">Up</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Beyond Linux� From Scratch     (System V Edition) - Version 2020-04-02">
          Home</a>
        </li>
      </ul>
    </div>
  </body>
</html>
